//
//  KLIPushViewModel.h
//  KoalaUtilKit
//
//  Created by Tommy on 15/1/16.
//  Copyright (c) 2015年 Koala Team. All rights reserved.
//

#import <Foundation/Foundation.h>

@protocol KIPush;
@class RACSignal,RACCommand;


@protocol KLIPushViewModel <NSObject>

@property(nonatomic,strong)NSDictionary *userInfo;


- (RACCommand*)turnOffPush;
- (RACCommand*)registerPush;

- (RACCommand*)uploadDeviceToken:(NSData*)token;
- (RACCommand*)bindUser:(id)userInfo;
- (RACCommand*)unbindUser;

//map userInfo to model cls and send to didReceiveRemoteNotification
- (RACCommand*)recvedRemoteNotificaton:(NSDictionary*)userInfo;

//after cmd will call it
- (RACSignal*)recvedRemoteNotificatonSignal:(NSDictionary*)userInfo;

@end
